08/05/2018
R-Studio es un entorno de desarrollo integrado que hace mƔs fƔcil el trabajo con R.
Es una aplicación informÔtica que proporciona servicios integrales para facilitar la programación y desarrollo del software R.
R-Studio estĆ” disponible de manera gratuita para Windows, MacOS y Linux o para navegadores conectados a RStudio Server.
Nos proporciona una mejor visualización de los datos y grÔficas en el Ôrea de trabajo.
Podemos crear fÔcilmente pÔginas web que incluyen código de R, asà como también pueden insertarse fórmulas escritas con latex.
##R-Studio
| Comando | ¿Qué hace? |
|---|---|
| if, else, else if | Ejecuta un bloque de código si se satisface una condición. |
x <- -11
if(x > 0){
print("x es pos")
}else if(x < 0){
print("x es neg")
}else{
print("x es cero")
}
## [1] "x es neg"
| Comando | ¿Qué hace? |
|---|---|
| if, else, else if | Ejecuta un bloque de código si se satisface una condición. |
x <- 0
if(x > 0){
print("x es pos")
}else if(x < 0){
print("x es neg")
}else{
print("x es cero")
}
## [1] "x es cero"
| Comando | ¿Qué hace? |
|---|---|
| if, else, else if | Ejecuta un bloque de código si se satisface una condición. |
x <- 5
if(x > 0){
print("x es pos")
}else if(x < 0){
print("x es neg")
}else{
print("x es cero")
}
## [1] "x es pos"
| Comando | ¿Qué hace? |
|---|---|
| ifelse( cond, yes, no ) | Si la condición(cond) es TRUE/FALSE, ejecuta la instrucción yes/no. |
y <- 10 ifelse(x >= y, x + y, x - y)
## [1] -5
| Comando | ¿Qué hace? |
|---|---|
| ifelse( cond, yes, no ) | Si la condición(cond) es TRUE/FALSE, ejecuta la instrucción yes/no. |
y <- 5 ifelse(x >= y, x + y, x - y)
## [1] 10
| Comando | ¿Qué hace? |
|---|---|
| ifelse( cond, yes, no ) | Si la condición(cond) es TRUE/FALSE, ejecuta la instrucción yes/no. |
y <- -15 ifelse(x >= y, x + y, x - y)
## [1] -10
| Comando | ¿Qué hace? |
|---|---|
| for | Ejecuta un bloque de código un número fijo de veces. |
for(i in 1:3){
print(i)
}
## [1] 1 ## [1] 2 ## [1] 3
| Comando | ¿Qué hace? |
|---|---|
| for | Ejecuta un bloque de código un número fijo de veces. |
data("iris")
dim(iris)
## [1] 150 5
head(iris, n = 3)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species ## 1 5.1 3.5 1.4 0.2 setosa ## 2 4.9 3.0 1.4 0.2 setosa ## 3 4.7 3.2 1.3 0.2 setosa
| Comando | ¿Qué hace? |
|---|---|
| for | Ejecuta un bloque de código un número fijo de veces. |
for(j in 2:4){
print(sd(iris[ , j]))
}
## [1] 0.4358663 ## [1] 1.765298 ## [1] 0.7622377
sd(iris[ , 2])
## [1] 0.4358663
| Comando | ¿Qué hace? |
|---|---|
| for | Ejecuta un bloque de código un número fijo de veces. |
x <- c(10, 1000, 100000)
for(k in 1:3){
y <- rnorm(x[k], mean = 5, sd = 1)
cat("La media muestral para los ", x[k], "es", mean(y), "\n")
}
## La media muestral para los 10 es 5.076394 ## La media muestral para los 1000 es 4.998057 ## La media muestral para los 1e+05 es 4.996939
| Comando | ¿Qué hace? |
|---|---|
| while | Ejecuta un bloque de código mientras se cumpla una condición. |
z <- 5
while(z > 2){
cat(z, " no es menor que 2 \n\n")
z <- z - 1
}
## 5 no es menor que 2 ## ## 4 no es menor que 2 ## ## 3 no es menor que 2
| Comando | ¿Qué hace? |
|---|---|
| repeat | Ejecuta un bloque de código hasta encontrar un break. |
x <- c("Monica", "Daniel", "Erwin", "Marco", "Gabriel") ; i <- 1
repeat{
print(paste("Hola ", x[i]))
if(x[i] == "Marco") break
i <- i + 1
}
## [1] "Hola Monica" ## [1] "Hola Daniel" ## [1] "Hola Erwin" ## [1] "Hola Marco"
| Comando | ¿Qué hace? |
|---|---|
| sapply | Bucle a lo largo de una lista que evalúa una función en cada elemento. |
sapply(iris, class)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species ## "numeric" "numeric" "numeric" "numeric" "factor"
head(iris, n = 2)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species ## 1 5.1 3.5 1.4 0.2 setosa ## 2 4.9 3.0 1.4 0.2 setosa
| Comando | ¿Qué hace? |
|---|---|
| sapply | Bucle a lo largo de una lista que evalúa una función en cada elemento. |
sapply(iris[, 1:4], mean)
## Sepal.Length Sepal.Width Petal.Length Petal.Width ## 5.843333 3.057333 3.758000 1.199333
| Comando | ¿Qué hace? |
|---|---|
| function( arglist ){ expr } | Crea una función, la cuÔl puede requerir una lista de argumentos(arglist) para evaluar todas las expresiones(expr) contenidas en la misma y retornar(return) un valor(value) deseado. |
fact <- function(x){
if(x == 0){
return(1)
}else{
x*fact(x - 1)
}
}
fact(0)
## [1] 1
fact(3)
## [1] 6
fact <- function(x){
if(x >= 0){
if(x == 0){
return(1)
}else{
x*fact(x - 1)
}
}else{
cat("El numero ingresado debe ser un entero no negativo")
}
}
fact(-7)
## El numero ingresado debe ser un entero no negativo